package com.dingding.service.rentsale.core.dao;

import java.util.List;

import com.dingding.common.core.base.dao.IBaseDao;
import com.dingding.common.core.beans.RentSaleCarOrder;
import com.dingding.facde.rentsale.dto.ResGetRentSaleOrderStatus;
import com.dingding.facde.rentsale.enums.CancelRentSaleOrderEnum;


/**
 * @Description:以租代售订单表
 * @author fengshuonan
 * @date 2016年7月4日 下午3:43:00
 * @version 叮叮搭车
 * @since 2.3.0
 */
public interface IRentSaleCarOrderDao extends IBaseDao<RentSaleCarOrder>{
	
	
	/**
	 * @Description: 是否存在以租代购订单
	 * @param userId 用户id
	 * @author fengshuonan
	 * @return boolean true 存在  false 不存在
	 * @since 2.3.0
	 */
	public boolean isExistThisOrder(String userId);
	
	
	/**
	 * @Description:以租代售下单
	 * @param loginId 用户登录id
	 * @param vehicleId 车辆id
	 * @param cityId 城市id
	 * @author fengshuonan
	 * @return boolean true 下单成功 false 下单失败
	 * @since 2.3.0
	 */
	public boolean placeRentSaleCarOrder(String loginId,String vehicleId,String cityId);
	
	
	/**
	 * @Description 获取某用户的以租代售活动的所有订单
	 * @param userId 用户id
	 * @author fengshuonan
	 * @return List<ResGetRentSaleOrderStatus> 以租代售订单封装
	 * @since 2.3.2
	 */
	public List<ResGetRentSaleOrderStatus> getRentSaleOrder(String userId);


	/**
	 * @Description: 取消以租代售订单
	 * @param userId 用户id
	 * @author fengshuonan
	 * @since 2.3.2
	 */
	public CancelRentSaleOrderEnum cancelRentSaleCarOrder(String userId);
}
